1. Technical Field
The present invention relates to data processing systems, and further to a data processing system including a server computer system coupled to multiple client computer systems for permitting the server to distribute a device driver to the client computer systems which are each executing a different operating system. More particularly, the present invention relates to a data processing system for distributing a device driver to multiple client computer systems, each executing a different operating system, by copying one of a plurality of different executable versions of the device driver to a client and causing the client to install the version on the client.
2. Description of Related Art
A major shift has occurred in recent years away from traditional mainframe computer systems to a client-server, distributed computer system model. Today, organizations have hundreds or even thousands of distributed servers installed throughout their enterprises, each having more processing power than the mainframe of just a few years ago.
Data storage, for the most part, is still directly connected to a dedicated channel to the particular server which it supports.
Problems occur, however, when such dedicated channels are maintained. When a computational resource needs data which is managed by one of its peers, it must query the peer with a request to provide this data. This results in a loss of effectiveness for the serving machine as it takes the time to honor the request. Also, directly attached disks lead to hardware inefficiencies, whereby one server may be out of disk space even as one of its peers has plenty of storage space to spare. Unfortunately, in this model, the machine with the shortage has no way to directly access the extra space available on its peer's disks. Finally, it is difficult to scale capacity and performance to meet rapidly changing requirements, such as the explosive growth of e-business applications.
Recognizing the limitations of traditional storage architectures such as described above, systems architects have developed a new solution known as a Storage Area Network (SAN). The SAN provides a high-speed connection between servers which permits any resources coupled to it to access a common storage device pool. The SAN eliminates the traditional dedicated connection between a server and a storage device along with the concept that the server “owns and manages” the storage devices. The SAN introduces the flexibility of networking to enable one server or many heterogeneous servers to share a common storage utility which may comprise many storage devices. The SAN is unencumbered by geographical proximity, instead relying only upon persistent communications links. The SAN changes the server-centric model of the typical open systems information infrastructure, replacing it with a data-centric infrastructure.
One problem facing SAN implementation is present with other technologies as well. In such an environment it is time-consuming and can be difficult to effectively distribute SAN device drivers across a widespread, heterogeneous network. The device drivers may need to be installed upon Windows NT, AIX, Solaris, or other operating systems. Currently, in order to distribute the device drivers, an administrator must go to each target server, determine which operating system the target system is executing, select the device driver for that operating system, log-on to that system, and perform the device driver installation on that system before going to the next target system.
Thus, it would be beneficial to have an apparatus and method for distributing a device driver to multiple client computer systems where each client system is executing a different operating system.